﻿

namespace HPSocketLibrary.Devices
{
    /// <summary>
    /// 【消息】 拍单上报
    /// </summary>
    public class MtMsg_OrderButtonState : MtMsgBase<MtIntfaceMsgFormat_Body_ReportOrderButtonState>
    {
        public static MtMsg_OrderButtonState CreateNewMsg(int packPlatNo)
        {
            MtMsg_OrderButtonState msg = new MtMsg_OrderButtonState();
            msg.head = MtIntfaceMsgFormat_Head.CreateDefaultRequestMsgHead(MtSSLMsgType.ORDER_BUTTON_STATE, true);
            msg.body = MtIntfaceMsgFormat_Body_ReportOrderButtonState.GetDefault(packPlatNo);
            return msg;
        }
    }
    /// <summary>
    /// 订单信息上报
    /// </summary>
    public class MtMsg_ReportOrderInfo : MtMsgBase<MtIntfaceMsgFormat_Body_ReportOrderInfo>
    {
        public static MtMsg_ReportOrderInfo CreateNewMsg(MtIntfaceMsgFormat_Body_ReportOrderInfo info)
        {
            MtMsg_ReportOrderInfo msg = new MtMsg_ReportOrderInfo();
            msg.head = MtIntfaceMsgFormat_Head.CreateDefaultRequestMsgHead(MtSSLMsgType.ORDER_RECEIVE, true);
            msg.body = info;
            return msg;
        }
    }
    /// <summary>
    /// 开箱交接指令
    /// </summary>
    public class MtMsg_OpenBoxJoin : MtMsgBase<MtIntfaceMsgFormat_Body_ReportOpenBoxJoin>
    {
        public static MtMsg_OpenBoxJoin CreateNewMsg(MtIntfaceMsgFormat_Body_ReportOpenBoxJoin info)
        {
            MtMsg_OpenBoxJoin msg = new MtMsg_OpenBoxJoin();
            msg.head = MtIntfaceMsgFormat_Head.CreateDefaultRequestMsgHead(MtSSLMsgType.OPENBOXJOIN, true);
            msg.body = info;
            return msg;
        }
    }
    /// <summary>
    /// 封箱交接指令
    /// </summary>
    public class MtMsg_LockBoxJoin : MtMsgBase<MtIntfaceMsgFormat_Body_ReportOpenBoxJoin>
    {
        public static MtMsg_LockBoxJoin CreateNewMsg(MtIntfaceMsgFormat_Body_ReportOpenBoxJoin info)
        {
            MtMsg_LockBoxJoin msg = new MtMsg_LockBoxJoin();
            msg.head = MtIntfaceMsgFormat_Head.CreateDefaultRequestMsgHead(MtSSLMsgType.LOCKBOXJOIN, true);
            msg.body = info;
            return msg;
        }
    }
    /// <summary>
    /// 通知开箱机释放箱子
    /// </summary>
    public class MtMsg_BoxDispose : MtMsgBase<MtIntfaceMsgFormat_Body_ReportOpenBoxJoin>
    {
        public static MtMsg_BoxDispose CreateNewMsg(MtIntfaceMsgFormat_Body_ReportOpenBoxJoin info)
        {
            MtMsg_BoxDispose msg = new MtMsg_BoxDispose();
            msg.head = MtIntfaceMsgFormat_Head.CreateDefaultRequestMsgHead(MtSSLMsgType.BOXDISPOSE, true);
            msg.body = info;
            return msg;
        }
    }
}